Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Метод Ньютона для розвязування СНЛАР

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2012
Тип роботи:
Лабораторна робота
Предмет:
Комп’ютерні методи дослідження інформаційних процесів та систем
Варіант:
9

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІКТА кафедра ЗІ ЗВІТ До лабораторної роботи №5 з курсу: «Комп’ютерні методи дослідження інформаційних процесів та систем» на тему: «Метод Ньютона для розв’язування систем нелінійних алгебраїчних рівнянь (СНЛАР)» Варіант №9 МЕТА РОБОТИ Ознайомлення з найпоширенішим ітераційним методом розв’язування систем нелінійних рівнянь – методом Ньютона. КОРОСТКІ ТЕОРЕТИЧНІ ВІДОМОСТІ Модифікований метод Ньютона. При використанні стандартного методу Ньютона на кожній ітерації доводиться обчислювати новий якобіан , хоч зрозуміло, що при закінченні ітерацій він повинен прийняти стабільне значення , де  –розв'язок. У модифікованому або спрощеному методі Ньютона якобіан  заміняють правильно підібраною матрицею А. Звичайно, найкращим, але практично недосяжним варіантом була б заміна , де  - розв'язок. Але на практиці користуються компромісним рішенням: – вибирають за А якобіан в початковій точці , a ітерації проводять за наступною формулою  – зберігають А протягом певного числа ітерацій; – на певній r-й ітерації змінюють А, прирівнюючи її якобіану  і з новим значенням знову виконують певне число ітерацій і т.д. Отже, якобіан обчислюється тільки час від часу, за рахунок чого досягається економія машинного часу. Однак, збіжність методу при цьому близька до лінійної. ЗАВДАННЯ   БЛОК-СХЕМА АЛГОРИТМУ СПИСОК ІДЕНТИФІКАТОРІВ КОНСТАНТ, ЗМІННИХ, ФУНКЦІЙ, ВИКОРИСТАНИХ У ПРОГРАМІ, ТА ЇХ ПОЯСНЕННЯ Main() – головний метод; input() – метод зчитування введених даних; class Program – клас, який містить тільки головну функцію Main(); class Main – клас, у якому відбуваються усі дії; Console.ReadLine() та Console.ReadKey() – функція зчитування з клавіатури; Console.WriteLine() та Console.Write() – функції виведення на екран; Convert.ToDouble() – функція конвертування у тип Double; try {} catch (Exception) {} – функція перехоплення винятку; goto – оператор переходу виконання коду до відповідної мітки; for() – оператор циклі з передумовою; if {} else {} – оператор умови; ТЕКСТ ПРОГРАМИ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace kmd_lab5 { class Program { static void Main(string[] args) { Main p = new Main(); p.input(); p.iterations(); p.output(); p.verify(); Console.Write("\nPress <Enter> to exit..."); Console.ReadKey(); } } class Main { double[,] A = new double[2, 2]; double[,] A1 = new double[2, 2]; double[] X = new double[2]; double[] X1 = new double[2]; double[] D = new double[2]; double[] F = new double[2]; double det, x1, x2, d, e; int h, n = 0; public void input() { Console.WriteLine(" --- Введiть початковi наближення, похибку та крок:"); for (int i = 0; i < 2; i++) { Console.Write(" x{0} = ", i + 1); X[i] = Convert.ToDouble(Console.ReadLine()); } Console.Write(" e = "); e = Convert.ToDouble(Console.ReadLine()); Console.Write(" h = "); h = Convert.ToInt32(Console.ReadLine()); } public void prJakob(double[] J) { // якобіан A[0, 0] = 1.0 - 2 * J[0]; A[0, 1] = -2.0 * J[1]; A[1, 0] = -2.0 * J[1]; A[1, 1] = 1.0 - 2.0 * J[0]; det = A[0, 0] * A[1, 1] - A[0, 1] * A[1, 0]; A1[0, 0] = A[1, 1] / det; A1[0, 1] = -A[0, 1] / det; A1[1, 0] = -A[1, 0] / det; A1[1, 1] = A...
Антиботан аватар за замовчуванням

28.05.2013 18:05

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини